<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../../print.css" type="text/css" media="print">
<meta content="CollectionEvent,org.as3commons.collections.fx.events.CollectionEvent,COLLECTION_CHANGED,ITEM_ADDED,ITEM_REMOVED,ITEM_REPLACED,RESET,item,items,kind,numItems,iterator" name="keywords">
<title>org.as3commons.collections.fx.events.CollectionEvent</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'CollectionEvent - AS3Commons Collections 1.3.2';
				var baseRef = '../../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">AS3Commons Collections 1.3.2</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../../all-classes.html')" href="../../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../all-classes.html')" href="../../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../index-list.html')" href="../../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../../index.html?org/as3commons/collections/fx/events/CollectionEvent.html&amp;org/as3commons/collections/fx/events/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;CollectionEvent</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class CollectionEvent"); titleBar_setSubNav(false,true,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">org.as3commons.collections.fx.events</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class CollectionEvent</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">CollectionEvent <img class="inheritArrow" alt="Inheritance" title="Inheritance" src="../../../../../images/inherit-arrow.gif"> flash.events.Event</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Subclasses</td><td><a href="../events/ListEvent.html">ListEvent</a>, <a href="../events/MapEvent.html">MapEvent</a>, <a href="../events/SetEvent.html">SetEvent</a></td>
</tr>
</table>
<p></p>
  Bindable collection base event.
  
  <p><strong>Description</strong></p>
  
  <p>The <code>CollectionEvent</code> is the base class of all events dispatched
  by the bindable collections in this library.</p>
  
  <p>A collection event is either an atomic or a bulk change notification.</p>
  
  <p>Atomic changes are dispatched after items have been added, removed or replaced.
  Atomic change notifications enable a listener to incrementally update its
  internal representation of the collection's state. To locate the position
  of an insertion, removal or replace operation, the collection event is
  equipped with a preinitialised iterator which points to the affected item
  (insert, replace) or its successor (remove).</p>
  
  <p>Bulk changes are dispatched after drastical modifications that can not be expressed
  in atomic insertion, removal or replacement events (clear, sort, reverse). Bulk change notifications
  require the listener to fully update its internal representation of the collection's state.
  A bulk notification does not provide an event iterator.</p>
  
  <p><strong>Features</strong></p>
  
  <p>A collection event consists of a set of useful properties to reconstruct and reflect
  the modifications made to a collection.</p>
  
  <ul>
  <li><code>kind</code> - The particular kind of the change.</li>
  <li><code>numItems</code> - The number of items affected (added, removed, replaced).</li>
  <li><code>item</code> - The item that has been added, removed or the replacing item (if single item) or<br />
  <code>items</code> - The items that have been added or removed (if multiple items).</li>
  <li><code>iterator()</code> - An iterator pointing to the position of the add, remove or replace
  operation.</li>
  </ul>
  
  <p><strong>Event kinds</strong></p>
  
  <p>A collection event has only one event type <code>CollectionEvent.COLLECTION_CHANGED</code>.
  The kind of the event can be distinguished by the event <code>kind</code> property.</p>
  
  <ul>
  <li><code>CollectionEvent.ITEM_ADDED</code> - An item (or a number of items) has been added.</li>
  <li><code>CollectionEvent.ITEM_REPLACED</code> - The item a specific position has been replaced.</li>
  <li><code>CollectionEvent.ITEM_REMOVED</code> - An item (or a number of items) has been removed.</li>
  <li><code>CollectionEvent.RESET</code> - The collection has been changed so drastically that atomic add,
  replace or remove events do not suffice (clear, sort, reverse or any other reset).</li>
  </ul>
  
  <p><strong><code>CollectionEvent</code> subclasses</strong></p>
  
  <p>To reflect its particular semantic, each bindable collection dispatch its custom specialised
  form of the <code>CollectionEvent</code>. The custom events add distinctive access properties
  such as index, item or key. You need to downcast the general CollectionEvent to the event type
  of the particular collection to access the additional properties.</p>
  
  <p><strong>Event iterator</strong></p>
  
  <p>The iterator returned by this event's <code>iterator()</code> method has always the same type as
  the iterator returned by the iterator returned by the event dispatching collection's
  <code>iterator()</code> method and can be safely downcasted to this interface.</p>
  
  <p id="link_CollectionEventDowncastExample"><strong>Event downcast example</strong></p>
  
  <a class="exampleCollapsed" href="#link_CollectionEventDowncastExample" onClick="toggleExample(this, 'CollectionEventDowncastExample');">Show example</a><br /><div id="CollectionEventDowncastExample" style='display:none'><div class='listing'><pre>package {
    import org.as3commons.collections.fx.ArrayListFx;
    import org.as3commons.collections.fx.events.CollectionEvent;
    import org.as3commons.collections.fx.events.ListEvent;
    import flash.display.Sprite;

    public class CollectionEventDowncastExample extends Sprite {

        public function CollectionEventDowncastExample() {
            var list : ArrayListFx = new ArrayListFx();
            list.addEventListener(CollectionEvent.COLLECTION_CHANGED, changedHandler);
            list.addEventListener(CollectionEvent.COLLECTION_CHANGED, changedHandler2);
            list.add(1);
        }
        
        // possibility 1
        private function changedHandler(e : CollectionEvent) : void {
            var listEvent : ListEvent = e as ListEvent;
            trace (listEvent.index, listEvent.item); // 0 1
        }

        // possibility 2
        private function changedHandler2(e : ListEvent) : void {
            trace (e.index, e.item); // 0 1
        }
    }
}
</pre></div></div>
  
  <p id="link_CollectionEventIteratorExample"><strong>Event iterator example</strong></p>
  
  <a class="exampleCollapsed" href="#link_CollectionEventIteratorExample" onClick="toggleExample(this, 'CollectionEventIteratorExample');">Show example</a><br /><div id="CollectionEventIteratorExample" style='display:none'><div class='listing'><pre>package {
    import org.as3commons.collections.framework.IListIterator;
    import org.as3commons.collections.fx.ArrayListFx;
    import org.as3commons.collections.fx.events.CollectionEvent;
    import flash.display.Sprite;

    public class CollectionEventIteratorExample extends Sprite {

        public function CollectionEventIteratorExample() {
            var list : ArrayListFx = new ArrayListFx();
            list.array = [1, 2, 4, 5];
            list.addEventListener(CollectionEvent.COLLECTION_CHANGED, changedHandler);

            list.addAt(2, 3); // 1, 2, 3, 4, 5
            list.replaceAt(3, 6); // 1, 2, 3, 6, 5
            list.removeAt(4); // 1, 2, 3, 6
            list.reverse(); // 6, 3, 2, 1
        }
        
        private function changedHandler(event : CollectionEvent) : void {
            var iterator : IListIterator = event.iterator() as IListIterator;
            
            switch (event.kind) {
                case CollectionEvent.ITEM_ADDED: // 1 2 ^ 3 4 5
                    trace (iterator.previousIndex); // 1
                    trace (iterator.nextIndex); // 2
                    trace (iterator.next()); // 3
                    break;

                case CollectionEvent.ITEM_REPLACED: // 1 2 3 ^ 6 5
                    trace (iterator.previousIndex); // 2
                    trace (iterator.nextIndex); // 3
                    trace (iterator.next()); // 6
                    break;

                case CollectionEvent.ITEM_REMOVED: // 1 2 3 6 ^
                    trace (iterator.previousIndex); // 3
                    trace (iterator.nextIndex); // -1
                    trace (iterator.next()); // undefined
                    break;

                case CollectionEvent.RESET:
                    trace (iterator); // null
                    break;
            }
        }
    }
}
</pre></div></div>
  
  <p id="link_CollectionEventIteratorDownCastExample"><strong>Event iterator downcast example</strong></p>
  
  <a class="exampleCollapsed" href="#link_CollectionEventIteratorDownCastExample" onClick="toggleExample(this, 'CollectionEventIteratorDownCastExample');">Show example</a><br /><div id="CollectionEventIteratorDownCastExample" style='display:none'><div class='listing'><pre>package {
    import org.as3commons.collections.framework.ICollectionIterator;
    import org.as3commons.collections.framework.IIterator;
    import org.as3commons.collections.framework.IListIterator;
    import org.as3commons.collections.framework.IOrderedListIterator;
    import org.as3commons.collections.fx.ArrayListFx;
    import org.as3commons.collections.fx.events.CollectionEvent;
    import flash.display.Sprite;

    public class CollectionEventIteratorDownCastExample extends Sprite {

        public function CollectionEventIteratorDownCastExample() {
            var list : ArrayListFx = new ArrayListFx();
            list.addEventListener(CollectionEvent.COLLECTION_CHANGED, changedHandler);
            list.add(1);
        }
        
        private function changedHandler(event : CollectionEvent) : void {
            var i : IIterator = event.iterator() as IIterator;
            
            trace ("i", i is IIterator); // true
            trace ("ci", i is ICollectionIterator); // true
            trace ("li", i is IListIterator); // true
            trace ("ali", i is IOrderedListIterator); // true
            
            var ci : ICollectionIterator = event.iterator() as ICollectionIterator;

            trace ("i", ci is IIterator); // true
            trace ("ci", ci is ICollectionIterator); // true
            trace ("li", ci is IListIterator); // true
            trace ("ali", ci is IOrderedListIterator); // true

            var li : IListIterator = event.iterator() as IListIterator;

            trace ("i", li is IIterator); // true
            trace ("ci", li is ICollectionIterator); // true
            trace ("li", li is IListIterator); // true
            trace ("ali", li is IOrderedListIterator); // true

            var ali : IOrderedListIterator = event.iterator() as IOrderedListIterator;

            trace ("i", ali is IIterator); // true
            trace ("ci", ali is ICollectionIterator); // true
            trace ("li", ali is IListIterator); // true
            trace ("ali", ali is IOrderedListIterator); // true
        }
    }
}
</pre></div></div>
  
  <p></p>
<br>
<hr>
</div>
<a name="propertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Properties</div>
<table id="summaryTableProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#COLLECTION_CHANGED">COLLECTION_CHANGED</a> : String = "collectionChanged"<div class="summaryTableDescription">[static]
   Event type of all collection events.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#item">item</a> : *<div class="summaryTableDescription">
   The affected item.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#ITEM_ADDED">ITEM_ADDED</a> : String = "itemAdded"<div class="summaryTableDescription">[static]
   Event kind of an item insertion event.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#ITEM_REMOVED">ITEM_REMOVED</a> : String = "itemRemoved"<div class="summaryTableDescription">[static]
   Event kind of an item removal event.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#ITEM_REPLACED">ITEM_REPLACED</a> : String = "itemReplaced"<div class="summaryTableDescription">[static]
   Event kind of an item replacement event.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#items">items</a> : Array<div class="summaryTableDescription">
   The affected items.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#kind">kind</a> : String<div class="summaryTableDescription">
   The event kind.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#numItems">numItems</a> : int<div class="summaryTableDescription">
   Number of added or removed items.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#RESET">RESET</a> : String = "reset"<div class="summaryTableDescription">[static]
   Event kind of collection reset events.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
</table>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#CollectionEvent()">CollectionEvent</a>()</div>
<div class="summaryTableDescription">
   CollectionEvent constructor.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#iterator()">iterator</a>():<a href="../../framework/ICollectionIterator.html">ICollectionIterator</a>
</div>
<div class="summaryTableDescription">
   Returns an iterator pointing to the position of the affected item.</div>
</td><td class="summaryTableOwnerCol">CollectionEvent</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="propertyDetail"></a>
<div class="detailSectionHeader">Property detail</div>
<a name="COLLECTION_CHANGED"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">COLLECTION_CHANGED</td><td class="detailHeaderType">property</td>
</tr>
</table>
<div class="detailBody">
<code>public static var COLLECTION_CHANGED:String = "collectionChanged"</code><p>
   Event type of all collection events.
   
   </p><p>Dispatched after all modifications of the collection.</p>
   
   <table class="innertable">
   
   <tr>
   <th>Property</th>
   <th>Value</th>
   </tr>
   
   <tr>
   <td>type</td>
   <td>CollectionEvent.COLLECTION_CHANGED</td>
   </tr>
   
   <tr>
   <td>kind</td>
   <td>CollectionEvent.ITEM_ADDED - Item (or items) has been added.<br />
   CollectionEvent.ITEM_REPLACED - Item has been replaced.<br />
   CollectionEvent.ITEM_REMOVED - Item (or items) has been removed.<br />
   CollectionEvent.RESET - Collection has changed drastically.</td>
   </tr>
   
   <tr>
   <td>item<br />
   items</td>
   <td>The item that has been added, removed or the replacing item (singular operation).<br />
   The items that have been added or removed (bulk operation).</td>
   </tr>
   
   <tr>
   <td>numItems</td>
   <td>The number of items added, removed or replaced.</td>
   </tr>
   
   <tr>
   <td>iterator()</td>
   <td>Iterator pointing to the position of an insertion, replacement or removal operation.</td>
   </tr>
   
   <tr>
   <th colspan="2">ListEvent</th>
   </tr>
   
   <tr>
   <td>list<br />
   index</td>
   <td>The event dispatching list.<br />
   The position of the item added, removed or replacing.</td>
   </tr>
   
   <tr>
   <th colspan="2">SetEvent</th>
   </tr>
   
   <tr>
   <td>set</td>
   <td>The event dispatching set.</td>
   </tr>
   
   <tr>
   <th colspan="2">MapEvent</th>
   </tr>
   
   <tr>
   <td>map<br />
   key</td>
   <td>The event dispatching map.<br />
   The key of the item added, removed or replacing.</td>
   </tr>
   
   </table>
   
   </div>
<a name="item"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">item</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var item:*</code><p>
   The affected item.
   
   </p><p>Only set for the event kinds <code>CollectionEvent.ITEM_ADDED</code>,
   <code>CollectionEvent.ITEM_REPLACED</code>, ITEM_REMOVED.</p>
   
   <p>Only set if the event is a result of a singular modification such as
   <code>add(), addAt(), replaceAt(), remove(), removeAt()</code> and not after
   bulk operations such as <code>addAllAt(), removeAllAt()</code>. In the latter
   case, the property <code>items</code> is set instead.</p>
   </div>
<a name="ITEM_ADDED"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">ITEM_ADDED</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static var ITEM_ADDED:String = "itemAdded"</code><p>
   Event kind of an item insertion event.
   
   </p><p>Dispatched after a single item or a list of items have been added
   at a specific position.</p>
   </div>
<a name="ITEM_REMOVED"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">ITEM_REMOVED</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static var ITEM_REMOVED:String = "itemRemoved"</code><p>
   Event kind of an item removal event.
   
   </p><p>Dispatched after a single item or a number of items have been removed
   from a specific position.</p>
   </div>
<a name="ITEM_REPLACED"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">ITEM_REPLACED</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static var ITEM_REPLACED:String = "itemReplaced"</code><p>
   Event kind of an item replacement event.
   
   </p><p>Dispatched after the item at a specific position has been replaced.</p>
   </div>
<a name="items"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">items</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var items:Array</code><p>
   The affected items.
   
   </p><p>Only set for the event kinds <code>CollectionEvent.ITEM_ADDED</code>,
   <code>CollectionEvent.ITEM_REPLACED</code>, <code>CollectionEvent.ITEM_REMOVED</code>.</p>
   
   <p>Only set if the event is a result of a bulk operation such as <code>addAllAt(),
   removeAllAt()</code> and not after a singular modification such as <code>add(), addAt(),
   replaceAt(), remove(), removeAt()</code>. In the latter case, the property <code>item</code>
   is set instead.</p>
   </div>
<a name="kind"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">kind</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var kind:String</code><p>
   The event kind.
   </p></div>
<a name="numItems"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">numItems</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var numItems:int</code><p>
   Number of added or removed items.
   
   </p><p>Only set for the event kinds <code>CollectionEvent.ITEM_ADDED</code>,
   <code>CollectionEvent.ITEM_REPLACED</code>, <code>CollectionEvent.ITEM_REMOVED</code>.</p>
   
   <p><code>-1</code> if the event kind is <code>CollectionEvent.RESET</code>.</p>
   </div>
<a name="RESET"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">RESET</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static var RESET:String = "reset"</code><p>
   Event kind of collection reset events.
   
   </p><p>Dispatched if the collection has been changed completely. E.g. after all
   items have been removed <code>clear()</code> or the underlying data source
   has been replaced <code>arrayList.array = newArray;</code> or multiple modification
   have been made in one step (<code>reverse(), sort()</code>).</p>
   </div>
<a name="constructorDetail"></a>
<div class="detailSectionHeader">Constructor detail</div>
<a name="CollectionEvent()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">CollectionEvent</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">constructor</td>
</tr>
</table>
<div class="detailBody">
<code>public function CollectionEvent()</code><p>
   CollectionEvent constructor.
   </p></div>
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="iterator()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">iterator</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function iterator():<a href="../../framework/ICollectionIterator.html">ICollectionIterator</a></code><p>
   Returns an iterator pointing to the position of the affected item.
   
   </p><p>Only set for the event kinds <code>CollectionEvent.ITEM_ADDED</code>,
   <code>CollectionEvent.ITEM_REPLACED</code>, <code>CollectionEvent.ITEM_REMOVED</code>.</p>
   
   <p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../../framework/ICollectionIterator.html">ICollectionIterator</a></code> &mdash; 
                        An <code>ICollectionIterator</code> pointing to the position of the last
   change or <code>null</code> if the event kind is <code>CollectionEvent.RESET</code>.
   
                        
                     </td>
</tr>
</table>
</div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright"> 
</center>
</div>
</body>
</html>
<!-- -->
